<?php

class FormatterHelper extends AppHelper{
    
     public function formatarCPF($cpf){
        if(substr_count($cpf, '.') > 0){
            $cpf = str_replace('.', '', $cpf);
            $cpf = str_replace('-', '', $cpf);
        }else{
            $cpf = substr($cpf, 0, 3) . '.' .
                   substr($cpf, 3, 3) . '.' .
                   substr($cpf, 6, 3) . '-' .
                   substr($cpf, 9, 2);
        }
        
        return $cpf;
    }
    
    public function formatarData($data, $hora = false){
        
        if($hora) {
            $dataHoraArray = explode(' ', $data);
            $dataArray = explode('-', $dataHoraArray[0]);
            $dataFormatada = $dataArray[2] . '/' . $dataArray[1] . '/' . $dataArray[0] . ' ' . $dataHoraArray[1];
        } else{
            $dataArray = explode('-', $data);
            $dataFormatada = $dataArray[2] . '/' . $dataArray[1] . '/' . $dataArray[0];
        }
        
        return $dataFormatada;
    }
    
    public function formatarTempoHHMM($tempo){
        $tempoArray = explode(':', $tempo);
        
        return $tempoArray[0] . ':' . $tempoArray[1];
    }
    
    public function formatarDecimal($numero){
        $numeroFormatado = '';
        
        if (!empty($numero)) {
            $arrayNumero = explode('.', $numero);
            
            if(count($arrayNumero) > 1){
                $qtdDigitos = strlen($arrayNumero[0]);

                if ($qtdDigitos > 3) {
                    for (;;) {
                        if ($qtdDigitos > 3) {
                            $numeroFormatado = '.' . substr($arrayNumero[0], $qtdDigitos - 3, 3);
                        } else if ($qtdDigitos > 0) {
                            $numeroFormatado = substr($arrayNumero[0], 0, $qtdDigitos) . $numeroFormatado;
                            break;
                        }
                        $qtdDigitos = $qtdDigitos - 3;
                    }
                } else {
                    $numeroFormatado = $arrayNumero[0];
                }

                return $numeroFormatado . ',' . $arrayNumero[1];
            } else{
                $numeroFormatado = $numero . ',00';
            }
        }
        
        return $numeroFormatado;
    }
}

?>
